home *** CD-ROM | disk | FTP | other *** search
/ Halting the Hacker - A P…uide to Computer Security / Halting the Hacker - A Practical Guide to Computer Security.iso / rfc / rfc1767.txt < prev    next >
Text File  |  1997-04-01  |  15KB  |  396 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                         D. Crocker
  8. Request for Comments: 1767                        Brandenburg Consulting
  9. Category: Standards Track                                     March 1995
  10.  
  11.  
  12.                    MIME Encapsulation of EDI Objects
  13.  
  14. Status of this Memo
  15.  
  16.    This document specifies an Internet standards track protocol for the
  17.    Internet community, and requests discussion and suggestions for
  18.    improvements.  Please refer to the current edition of the "Internet
  19.    Official Protocol Standards" (STD 1) for the standardization state
  20.    and status of this protocol.  Distribution of this memo is unlimited.
  21.  
  22. Table of Contents
  23.  
  24.    1. Introduction...........................................  1
  25.    2. Application/EDIFACT specification......................  2
  26.    3. Application/EDI-X12 specification......................  3
  27.    4. Application/EDI-Consent specification..................  4
  28.    5. Sample edi usage in MIME-based email...................  5
  29.    6. References.............................................  5
  30.    7. Security Considerations................................  6
  31.    8. Acknowledgments........................................  6
  32.    9. Author's Address.......................................  6
  33.    10. Appendix - MIME for EDI users.........................  7
  34.  
  35. 1.  Introduction
  36.  
  37.    Electronic Data Interchange (EDI) provides a means of conducting
  38.    structured transactions between trading partners.  The delivery
  39.    mechanism for these types of transactions in a paper world has been
  40.    the postal system, so it is to be expected that electronic mail would
  41.    serve as a natural delivery mechanism for electronic transactions.
  42.    This specification permits formatted electronic business interchanges
  43.    to be encapsulated within MIME messages [Bore92].  For the
  44.    specification effort, the basic building block from EDI is an
  45.    interchange.
  46.  
  47.    This specification pertains only to the encapsulation of EDI objects
  48.    within the MIME environment.  It intends no changes in those objects
  49.    from the primary specifications that define the syntax and semantics
  50.    of them.  EDI transactions take place through a variety of carriage
  51.    and exchange mechanisms.  This specification adds to that repertoire,
  52.    by permitting convenient carriage through Internet email.
  53.  
  54.  
  55.  
  56.  
  57.  
  58. Crocker                                                         [Page 1]
  59.  
  60. RFC 1767                      EDI in MIME                     March 1995
  61.  
  62.  
  63.    Since there are many different EDI specifications, the current
  64.    document defines three distinct categories as three different MIME
  65.    content-types.  One is Application/EDI-X12, indicating that the
  66.    contents conform to the range of specifications developed through the
  67.    X12 standards organization [X125, X126, X12V].  Another is
  68.    Application/EDIFACT, indicating that the contents conform to the
  69.    range of specifications developed by the United Nations Working Party
  70.    4 Group of Experts 1 EDIFACT boards [FACT, FACV].  The last category
  71.    covers all other specifications; it is Application/EDI-consent.
  72.  
  73. 2.     APPLICATION/EDIFACT SPECIFICATION
  74.  
  75.    The Application/EDIFACT MIME body-part contains data as specified for
  76.    electronic data interchange by [FACT, FACV].
  77.  
  78.    Within EDIFACT, information is specified by:
  79.  
  80.    MIME type name:               Application
  81.  
  82.    MIME subtype name:            EDIFACT
  83.  
  84.    Required parameters:          none
  85.  
  86.    Optional parameters:          CHARSET, as defined for MIME
  87.  
  88.    Encoding considerations:      May need BASE64 or QUOTED-PRINTABLE
  89.                                  transfer encoding
  90.  
  91.    Security considerations:      See separate section in the
  92.                                  document.
  93.  
  94.    Published specification:      Contained in the following section.
  95.  
  96.    Rationale:                    The EDIFACT specifications are
  97.                                  accepted standards for a class of
  98.                                  inter-organization transactions;
  99.                                  this permits their transmission
  100.                                  over the Internet, via email.
  101.  
  102.    Contact-info:                 See Contact section, below.
  103.  
  104.    Detail specific to MIME-based usage:
  105.  
  106.         This is a generic mechanism for sending any EDIFACT
  107.         interchange.  The object is self-defining, in terms of
  108.         indicating which specific EDI objects are included.  Most
  109.         EDI data is textual, but special characters such as some
  110.         delimiters may be non-printable ASCII or some data may be
  111.  
  112.  
  113.  
  114. Crocker                                                         [Page 2]
  115.  
  116. RFC 1767                      EDI in MIME                     March 1995
  117.  
  118.  
  119.         pure binary.  For EDI objects containing such data, the MIME
  120.         transfer mechanism may need to encode the object in Content-
  121.         Transfer-Encoding:quoted-printable or base64.
  122.  
  123. 3.     APPLICATION/EDI-X12 SPECIFICATION
  124.  
  125.    The Application/EDI-X12 MIME body-part contains data as specified for
  126.    electronic data interchange by  [X125, X12.6, EDIV].
  127.  
  128.    Within MIME, EDI-X12 information is specified by:
  129.  
  130.    MIME type name:               Application
  131.  
  132.    MIME subtype name:            EDI-X12
  133.  
  134.    Required parameters:          none
  135.  
  136.    Optional parameters:          CHARSET, as defined for MIME
  137.  
  138.    Encoding considerations:      May need BASE64 or QUOTED-PRINTABLE
  139.                                  transfer encoding
  140.  
  141.    Security considerations:      See separate section in the
  142.                                  document.
  143.  
  144.    Published specification:      Contained in the following section.
  145.  
  146.    Rationale:                    The ASC X12 EDI specifications are
  147.                                  accepted standards for a class of
  148.                                  inter-organization transactions;
  149.                                  this permits their transmission
  150.                                  over the Internet, via email.
  151.  
  152.    Contact-info:                 See Contact section, below.
  153.  
  154.    Detail specific to MIME-based usage:
  155.  
  156.         This is a generic mechanism for sending any ASC X12
  157.         interchange.  The object is self-defining, in terms of
  158.         indicating which specific EDI objects are included.  Most
  159.         EDI data is textual, but special characters such as some
  160.         delimiters may be non-printable ASCII or some data may be
  161.         pure binary.  For EDI objects containing such data, the MIME
  162.         transfer mechanism may need to encode the object in Content-
  163.         Transfer-Encoding:quoted-printable or base64.
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170. Crocker                                                         [Page 3]
  171.  
  172. RFC 1767                      EDI in MIME                     March 1995
  173.  
  174.  
  175. 4.     APPLICATION/EDI-CONSENT SPECIFICATION
  176.  
  177.    The Application/EDI-consent MIME body-part contains data as specified
  178.    for electronic data interchange with the consent of explicit,
  179.    bilateral trading partner agreement exchanging the EDI-consent
  180.    traffic.  As such, use of EDI-consent only provides a standard
  181.    mechanism for "wrapping" the EDI objects but does not specify any of
  182.    the details about those objects.
  183.  
  184.    Within MIME, EDI-consent information is specified by:
  185.  
  186.    MIME type name:               Application
  187.  
  188.    MIME subtype name:            EDI-consent
  189.  
  190.    Required parameters:          none
  191.  
  192.    Optional parameters:          CHARSET, as defined for MIME
  193.  
  194.    Encoding considerations:      May need BASE64 or QUOTED-PRINTABLE
  195.                                  transfer encoding
  196.  
  197.    Security considerations:      See separate section in the
  198.                                  document.
  199.  
  200.    Published specification:      Contained in the following section.
  201.  
  202.    Rationale:                    Existing practice for exchanging
  203.                                  EDI includes a very wide range of
  204.                                  specifications which are not part
  205.                                  of the usual, accredited standards
  206.                                  world.  Nevertheless, this traffic
  207.                                  is substantial and well-
  208.                                  established.  This content type
  209.                                  provides a means of delimiting such
  210.                                  content in a standard fashion.
  211.  
  212.    Contact-info:                 See Contact section, below.
  213.  
  214.    Detail specific to MIME-based usage:
  215.  
  216.         This is a generic mechanism for sending any EDI object
  217.         explicitly agreed to by the trading partners.  X12 and
  218.         EDIFACT object must be sent using their assigned MIME
  219.         content type.  EDI-consent is for all other EDI objects, but
  220.         only according to trading partner agreements between the
  221.         originator and the recipient.   Most EDI data is textual,
  222.         but special characters such as some delimiters may be non-
  223.  
  224.  
  225.  
  226. Crocker                                                         [Page 4]
  227.  
  228. RFC 1767                      EDI in MIME                     March 1995
  229.  
  230.  
  231.         printable ASCII or some data may be pure binary.  For EDI
  232.         objects containing such data, the MIME transfer mechanism
  233.         may need to encode the object in Content-Transfer-
  234.         Encoding:quoted-printable or base64.
  235.  
  236. 5.     SAMPLE EDI USAGE IN MIME-BASED EMAIL
  237.  
  238.    Actual use of EDI within MIME-based mechanisms requires attention to
  239.    considerable detail.  This section is intended as an example of the
  240.    gist of the formatting required to encapsulate EDI objects within
  241.    Internet mail, using MIME.  To send a single EDIFACT interchange:
  242.  
  243.    To:  <<recipient organization EDI email address>>
  244.    Subject:
  245.    From: <<sending organization EDI email address>>
  246.    Date:
  247.    Mime-Version: 1.0
  248.    Content-Type: Application/EDIFACT
  249.    Content-Transfer-Encoding:  QUOTED-PRINTABLE
  250.  
  251.    <<standard EDIFACT Interchange goes here>>
  252.  
  253. 6.     REFERENCES
  254.  
  255.    [Bore92]    Borenstein, N., and N. Freed, "MIME (Multipurpose
  256.                Internet Mail Extensions) Part One: Mechanisms for
  257.                Specifying and Describing the Format of Internet Message
  258.                Bodies", RFC 1521, Bellcore, Innosoft, September 1993.
  259.  
  260.    [Brad89]    Braden, R., Editor, "Requirements for Internet Hosts -
  261.                Application and Support", STD 3, RFC 1123, Internet
  262.                Engineering Task Force, October 1989.
  263.  
  264.    [Croc82]    Crocker, D.,  "Standard for the Format of Internet
  265.                Text Messages", STD 11, RFC 822, UDEL, August 1982.
  266.  
  267.    [Rose93]    Rose, M., "The Internet Message: Closing the Book
  268.                with Electronic Mail", PTR Prentice Hall, Englewood
  269.                Cliffs, N.J., 1993.
  270.  
  271.    [Post82]    Postel, J.,  "Simple Mail Transfer Protocol".
  272.                STD 10, RFC 821, USC/Information Sciences Institute,
  273.                August 1982.
  274.  
  275.    [X12V]      Data Interchange Standards Association; sets of
  276.                specific EDI standards are ordered by their version
  277.                number; Washington D.C.
  278.  
  279.  
  280.  
  281.  
  282. Crocker                                                         [Page 5]
  283.  
  284. RFC 1767                      EDI in MIME                     March 1995
  285.  
  286.  
  287.    [X125]      ANSI X12.5 Interchange Control Structure for
  288.                Electronic Data Interchange, Washington D.C.: DISA
  289.    [X126]      ANSI X12.6 Applications Control Structures for
  290.                Electronic Data Interchange, Washington D.C.: DISA
  291.  
  292.    [FACT]      United Nations Economic Commission (UN/EC)
  293.                Electronic Data Interchange For Administration,
  294.                Commerce and Transport (EDIFACT) - Application Level
  295.                Syntax Rules (ISO 9735), 1991.
  296.  
  297.    [FACV]      Version sets contains the specific syntax documents,
  298.                the element and segment dictionaries, and the
  299.                transaction/message specifications.
  300.  
  301. 7.     SECURITY CONSIDERATIONS
  302.  
  303.    EDI transactions typically include sensitive data, so that
  304.    transmission often needs to attend to authentication, data integrity,
  305.    privacy, access control and non-repudiation concerns.  This
  306.    specification permits transmission of such sensitive data via
  307.    Internet mail and other services which support MIME object
  308.    encapsulation.  For transmission of sensitive data, it is essential
  309.    that appropriate security services, such as authentication, privacy
  310.    and/or non-repudiation be provided.
  311.  
  312.    This specification does NOT, itself, provide any security-related
  313.    mechanisms.  As needed and appropriate, such mechanisms MUST be
  314.    added, either via Internet MIME-based security services or any other
  315.    services which are appropriate to the user requirements, such as
  316.    those provided by EDI-based standards.
  317.  
  318. 8.     ACKNOWLEDGMENTS
  319.  
  320.    Tom Jones offered introductory text and descriptions of candidate
  321.    header options.  Numerous working group participants provided review
  322.    and comment, especially Walt Houser, Gail Jackson, and Jim Amster.
  323.  
  324. 9.     AUTHOR'S ADDRESS
  325.  
  326.    David H. Crocker
  327.    Brandenburg Consulting
  328.    675 Spruce Dr.
  329.    Sunnyvale, CA 94086 USA
  330.  
  331.    Phone:  +1 408 246 8253
  332.    Fax:  +1 408 249 6205
  333.    EMail: dcrocker@mordor.stanford.edu
  334.  
  335.  
  336.  
  337.  
  338. Crocker                                                         [Page 6]
  339.  
  340. RFC 1767                      EDI in MIME                     March 1995
  341.  
  342.  
  343. 10.    APPENDIX - MIME FOR EDI USERS
  344.  
  345.    To assist those familiar with EDI but not with Internet electronic
  346.    mail, this Appendix is provided as a very brief introduction,
  347.    primarily to give pointers to the relevant specifications.  This
  348.    section is in no way intended to be a thorough introduction.  An
  349.    excellent introductory text is [Rose93].
  350.  
  351.    Internet electronic mail follows the classic user agent/mail transfer
  352.    agent model.  In this model, user software produces a standardized
  353.    object which is transferred via standard exchange protocols.
  354.  
  355.    An Internet electronic mail object comprises a collection of headers,
  356.    followed by a (possibly structured) body.  The headers specify such
  357.    information as author and recipient addresses, subject summary,
  358.    creation date, handling node names, and so on, and are defined by
  359.    RFC822 and RFC1123 [Croc82, Brad89].  If the body is structured, it
  360.    conforms to the rules of the Multipurpose Internet Message Exchange
  361.    (MIME) [Bore92].  A structured body may have parts encoded in
  362.    different text character sets, or even of entirely different types of
  363.    data, such as voice or graphics.
  364.  
  365.    The Simple Mail Transfer Protocol (SMTP) [Post82, Brad89] performs
  366.    the primary task of message transmission.  User posting and delivery
  367.    interactions, between the user agent and the message transfer agent,
  368.    on the same machine, are not standardized and are platform-specific.
  369.  
  370.    An EDI-related use of Internet Mime email will have (at least) the
  371.    following components:
  372.  
  373.        Business Program/Data base -> EDI Translator ->
  374.        -> MIME encapsulation -> RFC822 packaging -> mail
  375.        submission ->
  376.        -> SMTP relaying ->
  377.        -> mail delivery -> RFC822 & Mime stripping ->
  378.        -> EDI Translator -> Business processing
  379.  
  380.    The first and last lines show components normal to all EDI activities,
  381.    so that it is only the EDI "transmission" components that are replaced
  382.    with Internet modules.
  383.  
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394. Crocker                                                         [Page 7]
  395.  
  396.